PHP8.2.1でとりあえずRep2/p2-phpを入れるだけ【5chフロントエンド】
3 min read
こんにちは無能です。
アプリ依存も無く2ch/5chを見るようにRep2を入れます。
PHPは現在Artix Linuxを使用している為、PHP8.2.1が入ります。
おまけに、依存関係としてphp-gd php-fpm imagemagick php-sqliteも入れておきます。
他も入れないといけないらしいですが、後述するcheckはパスしたのでとりあえずよしとします。
sudo pacman -S php php-gd php-fpm imagemagick php-sqlite
まずmikoim氏のレポジトリからPHP8.*対応の物を入れます。
https://github.com/mikoim/p2-php
git clone git://github.com/open774/p2-php.git
cd p2-php
git cloneで自分のPCに入れて移動
curl -O https://getcomposer.org/download/1.10.25/composer.phar
chmod +x composer.phar
./composer.phar install
依存関係のインストール・・・ですがこのままだとdropbox APIのレポジトリが削除されている為失敗します。
もし上記コマンドを実行してしまった場合、composer clear-cacheでキャッシュを削除してください。
https://github.com/dropbox/dropbox-php-sdk/
という訳で、/p2-php/composer.jsonを編集します。
{
"name": "open774/p2-php",
"description": "The server side 2ch viewer written in PHP",
"license": "X11",
"repositories": [
{
"type": "pear",
"url": "https://pear.php.net"
},
{
"type": "vcs",
"url": "https://github.com/open774/quickform"
}
],
"require": {
"php": ">=5.3.6",
"rsky/pear-core-min": "dev-master",
"rsky/pear-pager": ">=2.4.9beta2",
"rsky/pear-html_template_flexy": ">=1.3.13alpha6",
"pear-pear.php.net/benchmark": "1.2.9",
"pear-pear.php.net/cache_lite": "1.7.15",
"pear-pear.php.net/db": "1.7.14",
"pear-pear.php.net/db_dataobject": "1.11.2",
"pear-pear.php.net/date": "1.4.7",
"pear-pear.php.net/file": "1.4.1",
"pear-pear.php.net/file_util": "1.0.0",
"pear-pear.php.net/html_common": "1.2.5",
"2ch774/quickform": "dev-master",
"pear-pear.php.net/http_request2": "2.2.1",
"pear-pear.php.net/net_socket": "1.0.10",
"pear-pear.php.net/net_url": "1.0.15",
"pear-pear.php.net/net_url2": "2.1.1",
"pear-pear.php.net/net_useragent_mobile": "1.0.0",
"pear-pear.php.net/validate": "0.8.5",
"pear-pear.php.net/var_dump": "1.0.4",
"pear-pear.php.net/xml_parser": "1.3.4",
"pear-pear.php.net/xml_rss": "1.0.2",
"symfony/console": "2.2.*",
"symfony/yaml": "2.2.*",
"jakeasmith/http_build_url": "1.0.*",
"dropbox/dropbox-php-sdk": "dev-master"
}
}
これの"dropbox/dropbox-php-sdk": "dev-master" を有志によって公開されているものに置き換えます。
"kunalvarma05/dropbox-php-sdk": "dev-master"
これで./composer.phar installを実行すると完了するはずです。
権限の変更をします。
chmod 0777 data/* rep2/ic
そして、そのままだとsqliteが動かないのでphp.iniを編集して
extension=pdo_sqlite
extension=sqlite3
この2つをコメントアウト又は追記してください。
以下を実行してチェックします。
php scripts/p2cmd.php check
おっけいそうです。
コレでテストしてlocalhost:8080にアクセス。
cd rep2
php -S localhost:8080 web.php
・・・
という事でエラーが吐き出されている事は確認出来るので、これから編集していくことになります。
途中で投げ出す可能性は高いですが、HTTPさえアレば使えるマルチプラットフォームな環境を作っておきたいのでノリと雰囲気でぼちぼちやっていこうと思います。
過去有志の栄光を忘れずに、なんとか引き継ぐぞー。
無理だったらゴメンネ(^o^)
ごめんにゃさい…
/ ̄ ̄ヽ ̄ ̄\
∠ レ | ⌒ヽ
\__ノ丶 )|
(_と__ノ⊂ニノ