[[SVN Trac de RS_Base]] #contents root@g7:/var/db/pkg # portinstall www/mod_python3 ject; recompile with -fPIC /usr/local/lib/python2.7/config/libpython2.7.a: could not read symbols: Bad value apxs:Error: Command failed with rc=65536 . *** [mod_python.so] Error code 1 1 error *** [do_dso] Error code 2 1 error ===> Compilation failed unexpectedly. Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to the maintainer. *** [do-build] Error code 1 Stop in /usr/ports/www/mod_python3. ** Command failed [exit code 1]: /usr/bin/script -qa /tmp/portinstall20130924-72279-f9qw3k env make ** Fix the problem and try again. ** Listing the failed packages (-:ignored / *:skipped / !:failed) ! www/mod_python3 (new compiler error) というエラーで、mod_python3 が再インストール出来なくなった。 http://blog.openmedialabo.net/256 を参考にして、 portupgrade -f libtool-2.4.2_1 したら、再インストールできた。 *trac error [#e4bafc09] 新規インストールした際、tracにアクセスし Internalserver error がでて、 [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] ServerName: 'k220.kuji-clinic.net' [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] DocumentRoot: '/usr/local/www/apache22/data' [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] URI: '/trac/' [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] Location: '/trac' [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] Directory: None [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] Filename: '/usr/local/www/apache22/data/trac/' [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] PathInfo: '' [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] Traceback (most recent call last): [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] File "/usr/local/lib/python2.7/site-packages/mod_python/importer.py", line 1537, in HandlerDispatch\n default=default_handler, arg=req, silent=hlist.silent) [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] File "/usr/local/lib/python2.7/site-packages/mod_python/importer.py", line 1229, in _process_target\n result = _execute_target(config, req, object, arg) [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] File "/usr/local/lib/python2.7/site-packages/mod_python/importer.py", line 1128, in _execute_target\n result = object(arg) [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] File "build/bdist.freebsd-8.2-RELEASE-amd64/egg/trac/web/modpython_frontend.py", line 149, in handler\n gateway.run(dispatch_request) [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] File "build/bdist.freebsd-8.2-RELEASE-amd64/egg/trac/web/wsgi.py", line 89, in run\n response = application(self.environ, self._start_response) [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] File "build/bdist.freebsd-8.2-RELEASE-amd64/egg/trac/web/main.py", line 411, in dispatch_request\n env_paths) [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] File "build/bdist.freebsd-8.2-RELEASE-amd64/egg/trac/web/main.py", line 657, in send_project_index\n loadpaths = [pkg_resources.resource_filename('trac', 'templates')] [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] File "build/bdist.freebsd-8.2-RELEASE-amd64/egg/pkg_resources.py", line 882, in resource_filename\n self, resource_name [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] File "build/bdist.freebsd-8.2-RELEASE-amd64/egg/pkg_resources.py", line 1352, in get_resource_filename\n return self._extract_resource(manager, zip_path) [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] File "build/bdist.freebsd-8.2-RELEASE-amd64/egg/pkg_resources.py", line 1359, in _extract_resource\n manager, os.path.join(zip_path, name) [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] File "build/bdist.freebsd-8.2-RELEASE-amd64/egg/pkg_resources.py", line 1373, in _extract_resource\n self.egg_name, self._parts(zip_path) [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] File "build/bdist.freebsd-8.2-RELEASE-amd64/egg/pkg_resources.py", line 962, in get_cache_path\n self.extraction_error() [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] File "build/bdist.freebsd-8.2-RELEASE-amd64/egg/pkg_resources.py", line 928, in extraction_error\n raise err [Wed Jun 08 18:05:09 2011] [error] [client 219.117.246.207] ExtractionError: Can't extract file(s) to egg cache\n\nThe following error occurred while trying to extract file(s) to the Python egg\ncache:\n\n [Errno 13] Permission denied: '/usr/local/www/apache22/data/trac/.egg-cache'\n\nThe Python egg cache directory is currently set to:\n\n /usr/local/www/apache22/data/trac/.egg-cache\n\nPerhaps your account does not have write access to this directory? You can\nchange the cache directory by setting the PYTHON_EGG_CACHE environment\nvariable to point to an accessible directory.\n のようであれば、/usr/local/www/apache22/data/tracを、 k220# chown -R www:www trac する。 http://www.caldron.jp/~nabetaro/svn/svnbook-1.5-final/svn-book.html#svn.basic *trac の SSL化 [#g5373545] /usr/local/etc/apache22/Includes/trac.conf <Location /trac> SSLRequireSSL SetHandler mod_python PythonHandler trac.web.modpython_frontend PythonOption TracEnvParentDir /usr/local/www/apache22/data/trac PythonOption TracUriRoot /trac AuthType Basic AuthName "trac" AuthUserFile /usr/local/www/apache22/data/.htpasswd Require valid-user </Location> apachectl restart ただし、これで、https://k222.kuji-clinic.net/trac/RS_Base/ などへアクセスすると、 セキュリティで保護されたWebページコンテンツのみを表示しますか? となるので、取り敢えず後ろ向きだが、 IE8のメニューから、[ツール]→[インターネットオプション]→[セキュリティ]→[レベルのカスタマイズ] と辿って、[混在したコンテンツを表示する] を 「有効にする」 へ変更しる。 *svn再起動 [#jb8160e9] k222# /usr/local/etc/rc.d/svnserve restart Stopping svnserve. Starting svnserve. *trac [#r4406db4] &ref(trac.png); portinstall japanese/trac ******************************************************************************* ===> Registering installation for ja-trac-0.11.3 ===> Cleaning for py-subversion-1.6.0_2 ===> Cleaning for subversion-1.6.0_2 ===> Cleaning for ja-trac-0.11.3 一度、ApacheをDBコンパイルオプション付きで再コンパイルするようにアラートがでて止まる。Apacheを再コンパイルしてOKがでた。 **使用準備 [#v6bb5f41] k222# mkdir -p /usr/local/www/apache22/data/trac/sandbox k222# trac-admin /usr/local/www/apache22/data/trac/sandbox initenv Creating a new Trac environment at /usr/local/www/apache22/data/trac/sandbox Project Name [My Project]> sandbox ( Enter ) Database connection string [sqlite:db/trac.db]> ( Enter ) Repository type [svn]> ( Enter ) Path to repository [/path/to/repos]> /usr/local/var/svn/repos/sandbox ( Enter ) --------------------------------------------------------------------- Warning: couldn't index the repository. This can happen for a variety of reasons: wrong repository type, no appropriate third party library for this repository type, no actual repository at the specified repository path... You can nevertheless start using your Trac environment, but you'll need to check again your trac.ini file and the [trac] repository_type and repository_path settings in order to enable the Trac repository browser. --------------------------------------------------------------------- Project environment for 'sandbox' created. You may now configure the environment by editing the file: /usr/local/www/apache22/data/trac/sandbox/conf/trac.ini If you'd like to take this new project environment for a test drive, try running the Trac standalone web server `tracd`: tracd --port 8000 /usr/local/www/apache22/data/trac/sandbox Then point your browser to http://localhost:8000/sandbox. There you can also browse the documentation for your installed version of Trac, including information on further setup (such as deploying Trac to a real web server). The latest documentation can also always be found on the project website: http://trac.edgewall.org/ Congratulations! k222# chown -R www:www /usr/local/www/apache22/data/trac/sandbox **mod_python Install [#s49ae2fc] k222# portinstall www/mod_python3 ================================================================================ Also remember to add to your Apache configuration in the appropriate context: PythonPath "['/path/to/foo', '/path/to/bar']" AddHandler python-program .py PythonHandler foobar PythonDebug On For more information, see http://www.modpython.org/. ================================================================================ **Apache Setting [#rf41f95f] # vi /usr/local/etc/apache22/httpd.conf 追加。 LoadModule python_module libexec/apache22/mod_python.so 後は見えるように設定。 # vi /usr/local/etc/apache22/Includes/trac.conf <Location /trac> SetHandler mod_python PythonHandler trac.web.modpython_frontend PythonOption TracEnvParentDir /usr/local/www/apache22/data/trac PythonOption TracUriRoot /trac </Location> **subversion のインストール [#w0ec0f8a] こっちの方が先の方が良いのか?? http://kog.seesaa.net/category/5914549-1.html http://www.caldron.jp/~nabetaro/svn/svnbook-1.5-final/svn-book.html k222# portinstall devel/subversion がエラーするので?? 、 cd /usr/ports/devel/subversion make make install ===> Installing rc.d startup script(s) ===> Compressing manual pages for subversion-1.6.0_2 ===> Registering installation for subversion-1.6.0_2 http://cocelo.s201.xrea.com/wiki/index.php?BSD%2FFreeBSD%2FSubversion httpd.conf に dav_module が二つあると思うので一つを削除 or コメントアウト。 # cat /usr/local/etc/apache22/httpd.conf | grep dav_module LoadModule dav_module libexec/apache22/mod_dav.so LoadModule dav_module libexec/apache22/mod_dav.so # vi /usr/local/etc/apache22/httpd.conf #LoadModule dav_module libexec/apache22/mod_dav.so **Sandbox ( 練習用リポジトリ ) の作成 [#l7b4304a] # mkdir -p /usr/local/var/svn/repos # svnadmin create /usr/local/var/svn/repos/sandbox # chown -R svn:svn /usr/local/var/svn/repos/sandbox k222# sudo -u www svn mkdir file:///usr/local/var/svn/repos/www/trunk file:///usr/local/var/svn/repos/www/tags file:///usr/local/var/svn/repos/www/branches -m "create www directorys" Committed revision 1. svn import file:///usr/local/var/svn/repos/www http://d.hatena.ne.jp/ymotongpoo/20070202/1170399321 **OpenSSH on Subversion [#aa600ba8] svn専用ユーザを追加する。 # pw groupadd -n svn # pw useradd -n svn -c "Subversion Comit User" -d /home/svn -g svn -h - -s /bin/sh # mkdir -p /home/svn/.ssh # chown -R svn:svn /home/svn 一般ユーザの公開鍵を /home/svn/.ssh にコピーする。 通常の公開鍵だとシェルでのログインも出来てしまうので、 command 等を公開鍵の先頭に追記する。 ( 実際は一行 ) command="svnserve -t --tunnel-user=コミットユーザ名 -r /usr/local/var/svn/repos" ,no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-dss AAAAB (中略)M6BA== ****@examle.com sshd_config で AllowUsers を設定している場合は svn ユーザを追加する。 # grep AllowUsers /etc/ssh/sshd_config AllowUsers user svn # /etc/rc.d/sshd restart k222# cd /home/svn/ k222# svnadmin create repos k222# chown -R svn:svn repos k222# /usr/local/etc/rc.d/svnserve start vi /etc/rc.conf svnserve_enable="YES" k222# k222# **Apache WebDAV on Subversion [#ze991b71] # vi /usr/local/etc/apache22/Includes/subversion.conf <Location /svn> DAV svn SVNParentPath /usr/local/var/svn/repos SVNListParentPath On <LimitExcept GET PROPFIND OPTIONS REPORT> Deny from all </LimitExcept> </Location> リポジトリ一覧を見せたくない場合は SVNListParentPath を off にする。 **error [#ya5687bf] k222# trac-admin /usr/local/www/apache22/data/trac/sandbox resync Resyncing repository history... Command failed: /usr/local/www/apache22/data/trac/sandbox does not appear to be a Subversion repository. k222# http://mishuku.net/archives/2008/04/trac.php ** portinstall www/trac-webadmin [#c5a58693] TracWebAdmin のeggファイルは添付ファイルにあります。 この添付ファイルをDLし、.zip 拡張子を除去し、プロジェクトのpluginsフォルダへコピー その後、 chown www:www TracWebAdmin-0.1.2dev_r6060-py2.4.egg してから、権限を与えたいユーザ が kuji であれば、 k222# trac-admin /usr/local/www/apache22/data/trac/RS_Base permission add kuji TRAC_ADMIN する。と、『管理』というバーが出てくる。 ---- #counter([total|today|yesterday]); &lastmod; ----